package com.maybach.core.ao.facade;

import com.maybach.common.VO.ApplyForLoanVO;
import com.maybach.common.VO.ContractVO;
import com.maybach.common.VO.LetterInfoVO;
import com.maybach.common.model.CarSnapDO;
import com.maybach.common.model.OrderInfoDO;
import com.maybach.core.form.order.EditLoanOrderForm;

import javax.servlet.http.HttpServletResponse;
import java.text.ParseException;
import java.util.List;

/**
 * Created by songshuang on 16/3/4.
 */
public interface LoanOrderAOFacade {

    public void setOrder(EditLoanOrderForm editLoanOrderForm) throws ParseException;

    void setLoanOrder(EditLoanOrderForm editLoanOrderForm) throws ParseException;

    void setOrderInfo(EditLoanOrderForm editLoanOrderForm, List<OrderInfoDO> list);

    void setCarSnap(EditLoanOrderForm editLoanOrderForm, CarSnapDO carSnapDO);

    List<ApplyForLoanVO> getContractInfo(Long id);

    LetterInfoVO getLetterInfo(Long id);

    void createContractPDF(String path, Long id, HttpServletResponse response);

    ContractVO createContract(Long id);

    Boolean sendLetter(Long id);

    void insertLog(String bizType, Long bizId, String detail, String title);
}
